$(document).ready(function() {
	

//	var url = "solicitacaocapacitacaos/bServerSide";
//	var table = " cursos.solicitacao_capacitacao";
//	var where = " where status = 'Aberto' "; 
//	var classe = "br.com.educa.modelo.curso.SolicitacaoCapacitacao";
//	
//	var aoColumns = [
//            { "sTitle": "Responsável", "mDataProp": "responsavel.nome","sClass": "right", "bVisible": true, "sDefaultContent":"" },
//            { "sTitle": "Nome da Capacitação", "mDataProp": "nomeCapacitacao","sClass": "right", "bVisible": true, "sDefaultContent":"" },
//            { "sTitle": "Tipo", "mDataProp": "tipoCapacitacao","sClass": "right", "bVisible": true, "sDefaultContent":"" },
//            { "sTitle": "Departamento proponente", "mDataProp": "departamentoProponente.nome","sClass": "right", "bVisible": true, "sDefaultContent":"" },
//            { "sTitle": "Período do semestre", "mDataProp": "periodoSemestre","sClass": "right", "bVisible": true, "sDefaultContent":"" },
//            { "sTitle": "Ano orçamentário", "mDataProp": "anoOrcamentario", "sClass": "right", "sType":"numeric" ,"bVisible": true , "sDefaultContent":""},
//            { "sTitle": "Construção de doutrina?", "mDataProp": "construcaoDoutrina", "sClass": "right", "bVisible": false, "sDefaultContent":""},
//            { "sTitle": "Local Previsto", "mDataProp": "localPrevisto","sClass": "right", "bVisible": false, "sDefaultContent":"" },
//            { "sTitle": "Qtd alunos", "mDataProp": "quantidadeAlunos","sClass": "right", "bVisible": false, "sDefaultContent":"" },
//            { "sTitle": "Qtd edições", "mDataProp": "quantidadeEdicoes","sClass": "right", "bVisible": false, "sDefaultContent":"" },
//            { "sTitle": "Situação", "mDataProp": "status","sClass": "right", "bVisible": true, "sDefaultContent":"" },
//            { "sTitle": "Qtd turmas", "mDataProp": "quantidadeTurmas","sClass": "right", "bVisible": false, "sDefaultContent":"" },
//            {"sTitle": "Opções", "mDataProp": "htmlControl","bSortable": false, "bVisible": true, "sWidth": "45px","sDefaultContent":"", 
//				   "fnRender": function ( oObj ) {
//						return  "<button type=\"button\" class=\"magnifierGlassDataGridBtn"+id+"\" onclick=\"deletar(event,'"+oObj.aData.id+"')\">Vizualizar Solicitação</button>"
//								+"<button type=\"button\" class=\"editarBtn"+id+"\" onclick=\"encaminharDepaid(event,'"+id+"','"+url+"','"+classe+"')\">Enviar Solicitação ao DEPAID</button>";
//				}
//			}
//		];

//	var arrString =	JSON.stringify(aoColumns, function(key, val) {if (typeof val === 'function') { return val + '';} return val;});
//	listServerSide(id, url, table, where, classe, arrString);

	var id = "solicitacaoCursoDataGrid";
	var solicitacaoCursoAoColumns = [
	                                 { "sTitle": "Responsável", "mDataProp": "responsavel.nome","sClass": "right", "bVisible": true, "sDefaultContent":"" },
	                                 { "sTitle": "Nome da Capacitação", "mDataProp": "nomeCapacitacao","sClass": "right", "bVisible": true, "sDefaultContent":"" },
	                                 { "sTitle": "Tipo", "mDataProp": "tipoCapacitacao","sClass": "right", "bVisible": true, "sDefaultContent":"" },
	                                 { "sTitle": "Departamento proponente", "mDataProp": "departamentoProponente.nome","sClass": "right", "bVisible": true, "sDefaultContent":"" },
	                                 { "sTitle": "Período do semestre", "mDataProp": "periodoSemestre","sClass": "right", "bVisible": true, "sDefaultContent":"" },
	                                 { "sTitle": "Ano orçamentário", "mDataProp": "anoOrcamentario", "sClass": "right", "sType":"numeric","bVisible": false , "sDefaultContent":""},
	                                 { "sTitle": "Construção de doutrina?", "mDataProp": "construcaoDoutrina", "sClass": "right", "bVisible": false, "sDefaultContent":""},
	                                 { "sTitle": "Local Previsto", "mDataProp": "localPrevisto","sClass": "right", "bVisible": false, "sDefaultContent":"" },
	                                 { "sTitle": "Qtd alunos", "mDataProp": "quantidadeAlunos","sClass": "right", "bVisible": false, "sDefaultContent":"" },
	                                 { "sTitle": "Qtd edições", "mDataProp": "quantidadeEdicoes","sClass": "right", "bVisible": false, "sDefaultContent":"" },
	                                 { "sTitle": "Situação", "mDataProp": "status","sClass": "right", "bVisible": true, "sDefaultContent":"" },
	                                 { "sTitle": "Qtd turmas", "mDataProp": "quantidadeTurmas","sClass": "right", "bVisible": false, "sDefaultContent":"" },
	                                 {"sTitle": "Opções", "mDataProp": "htmlControl","bSortable": false, "bVisible": true, "sWidth": "45px","sDefaultContent":"", 
	                     				   "fnRender": function ( oObj ) {
	                     						
	                     					   var botao = "";	                     					   
	                     					   if(oObj.aData.despachar){
	                     						   botao = "<button type=\"button\" class=\"editarBtn"+id+"\" onclick=\"encaminharDepaid(event,'"+id+"')\">Despachar solicitação</button>";
	                     					   }
	                     					   botao+= "<button type=\"button\" class=\"magnifierGlassDataGridBtn"+id+"\" onclick=\"loadDespacho(event, '"+oObj.aData.id+"')\">Vizualizar despachos</button>";
	                     					   botao+= "<button type=\"button\" class=\"printBtn"+id+"\" onclick=\"imprimir(event, '"+oObj.aData.id+"')\">Imprimir Solicitação</button>";
	                     					   return  botao;
	                     				}
	                     			}
	                     		];
 	oneToMany("solicitacaoCursoDataGrid", JSON.stringify(solicitacaoCursoAoColumns, function(key, val) {if (typeof val === 'function') { return val + '';} return val;}));	
 	
 	loadSolicitacoes();
 	
 	var despachoAoColumns = [
 	                                 { "sTitle": "Documento", "mDataProp": "documento","sWidth": "45px","sClass": "right","bVisible": true, "sDefaultContent":"" },
 	                                 { "sTitle": "Número", "mDataProp": "idDocumento","sWidth": "45px","sClass": "right","bVisible": true, "sDefaultContent":"" },
 	                                 { "sTitle": "Texto", "mDataProp": "texto","sClass": "right","bVisible": true, "sDefaultContent":"" },
 	                                 { "sTitle": "Aceite", "mDataProp": "dataAceite","sWidth": "45px","sClass": "right","bVisible": true, "sDefaultContent":"" },
 	                                 { "sTitle": "Envio", "mDataProp": "dataEnvio","sWidth": "45px","sClass": "right","bVisible": true, "sDefaultContent":"" },
 	                                 {"sTitle": "", "mDataProp": "htmlControl","sWidth": "1px","bSortable": false, "bVisible": false, "sDefaultContent":"", 
 	                  				   "fnRender": function ( oObj ) {
 	                  						return  "";
 			                  			 }
 			                  		 }
 	                                 
 	                     		];
 	oneToMany("despachosDataGrid", JSON.stringify(despachoAoColumns, function(key, val) {if (typeof val === 'function') { return val + '';} return val;}));	

	
});

function loadSolicitacoes(){
	$("#solicitacaoCursoDataGrid").dataTable().fnClearTable();
	$.ajax({
		"type" : "GET",
		"contentType" : "application/json",
		"dataType" : "json",
		"url" : "solicitacaocapacitacaos?find=BySolicitacoesUsuario",
		"error" : trataErro,
		"success" : function(result) {			
			$("#solicitacaoCursoDataGrid").dataTable().fnAddData(result);
		}
	});
}

function loadDespacho(event, id){
	
	$("#despachosDataGrid").dataTable().fnClearTable();
	$.ajax({
		"type" : "GET",
		"contentType" : "application/json",
		"dataType" : "json",
		"url" : "alertas?find=ByIdDocumentoEquals&idDocumento="+id,
		"error" : trataErro,
		"success" : function(result) {			
			$("#despachosDataGrid").dataTable().fnAddData(result);
		}
	});
}

function imprimir(event, id){
	
	$.ajax({
		"type" : "GET",
		"contentType" : "application/json",
		"dataType" : "json",
		"url" : "solicitacaocapacitacaos/solicitacaoImpressa?id="+id,
		"error" : trataErro
	});
}

//melhora de performace.
function encaminharDepaid(event,idDataGrid){
	var clickedTr = $(event.target).parent("td").parent("tr").get(0);
	var aTrs = $('#'+idDataGrid).dataTable().fnSettings().aoData;
	var objetoSelecionado;
	for(var i=0; i< aTrs.length; i++){
		if(aTrs[i].nTr==clickedTr){
			objetoSelecionado = aTrs[i]._aData;
		}
	}

	var divObj = $('#modalDialog');
	divObj.dialog('destroy');
	divObj.dialog({autoOpen:false, closeOnEscape: true, resizable:false, heigth: 400, width: 800, modal: true});
	divObj.dialog("option","title", "Despacho da solicitação "+objetoSelecionado.id);


	$.ajax({
		"type": "GET",
		"contentType": "application/json",
		"url": "despachoSolicitacao",
		"beforeSend": function(xhr,settings){
			
			
			$("#"+$("form").attr("id")).validationEngine('hide');
			$("#box_direita").block({message: "<img border='0' src='"+"img/ajax-loader.gif"+"'/> &nbsp;Desenhando tela...",
								 css: { 'border': '0px',
										'background': 'transparent',
										'color': 'white'
								      } 
							});
		},
		"error": trataErro,
		"complete": function(){
			$("#box_direita").unblock();
		},
		"success": function(data, textStatus, xhr){
				divObj.html("");
				divObj.html(data);
				loadDados(objetoSelecionado);
				divObj.dialog('open');
		}
	 });

	return false;
}

//function populaDataGrid(){
//	$("#solicitacaoCursoDataGrid").dataTable().fnClearTable();
//	$.ajax({
//		"type" : "GET",
//		"contentType" : "application/json",
//		"dataType" : "json",
//		"url" : "solicitacaocapacitacaos?find=ByStatusDataGrid&status=Aberto",
//		"error" : trataErro,
//		"success" : function(result) {			
//			$("#solicitacaoCursoDataGrid").dataTable().fnAddData(result);
//		}
//	});		
//	return false;
//}
